# 计算一张长度为l的纸, 对折n次, 纸的最远端划过的距离c
def count_circle(l, n):
    c = 0
    i = 1
    while i <= n:
        # 每次对折划过半个圆 半个圆的周长就是π*此时纸的长度的一半
        c0 = 3.1415926 * l / 2
        print("第%d次折叠纸张边缘划过的距离%e米" % (i, c0))
        # C = 3E8  # 光速 米/秒
        print("光速走完需要%e年" % (c0 / C / 3600 / 24 / 365))
        c += c0
        # 对折一次长度减半
        l /= 2
        # 计数器自加一
        i += 1
    return c

if __name__ == '__main__':
    l = 6.74E27 # 纸的长度
    n = 52 # 折叠次数
    C = 3E8  # 光速 米/秒
    c = count_circle(l, n)
    print("%e长度的纸对折%d次边缘划过的总距离是:%e米" % (l, n, c))
    print("光速走完需要%e年" % (c / C / 3600 / 24 / 365))
